home *** CD-ROM | disk | FTP | other *** search
/ Windows 6-Pak - Disc 4 / Windows 6-Pak (InfoMagic) (Disc 4) (1999).ISO / Text-Chat-Addins / C-Script.exe / Sysfiles / Remote / prtction.mrc < prev    next >
Encoding:
Text File  |  1998-05-11  |  18.3 KB  |  467 lines

  1. ;C-Script v5.0 ⌐ 1998 C-Team. All rights reserved.
  2. ;Configure at your own risk
  3. ;Remote protection file
  4.  
  5. #max off
  6. on 1:INPUT:*:return
  7. on 1:TEXT:*:return
  8. on 1:ACTION:*:return
  9. ctcp 1:*:if ($nick != $me) { .ignore -a $nick 3 } | halt
  10. raw *:*:halt
  11. on 1:*:if ($nick != $me) { .ignore -a $nick 3 } | halt
  12. #MAX end
  13. #hackpro off
  14. on 1!:QUIT: {
  15.   if (((.net isin $1) || (.com isin $1) || (.org isin $1) || (.edu isin $1) || (irc. isin $1) || (.irc isin $1)) && ((.net isin $2) || (.com isin $2) || (.org isin $2) || (.edu isin $2) || (irc. isin $2) || (.irc isin $2)) && (($3- == $null) && (/ !isin $1-))) {
  16.     %i = 1
  17.     %number = $chan(0)
  18.     :keeptesting
  19.     if (($nick isop $chan(%i))) { set %servops [ $+ [ $chan(%i) ] ] [ $+ [ $address($nick,2) ] ] YES }
  20.     inc %i
  21.     if (%i > %number) halt
  22.     goto keeptesting
  23.   }
  24. }
  25. on @1:SERVEROP:#: {
  26.   if ($level($opnick) == 7) { halt }
  27.   if (%servops [ $+ [ $chan ] ] [ $+ [ $address($nick,2) ] ] == YES) { halt }
  28.   else { mode $chan -o $opnick | msg $chan [HACK PROTECTION] $opnick }
  29. }
  30. on @1!:MODE:#: {
  31.   if ($level($nick) == 7) halt
  32.   if ((%disallowmodes isin $1-) && (%disallowmodesIsOn == On)) { if (k isin $1) { mode $chan - $+ %disallowmodes $2 } | else { mode $chan - $+ %disallowmodes } }
  33.   if ((%forcemodes isin $1-) && (%forcemodesIsOn == On)) { mode $chan + $+ %forcemodes }
  34. }
  35. on @1:SERVERMODE:#: {
  36.   if ((%disallowmodes isin $1-) && (%disallowmodesIsOn == On)) { if (k isin $1) { mode $chan - $+ %disallowmodes $2 } | else { mode $chan - $+ %disallowmodes } }
  37.   if ((%forcemodes isin $1-) && (%forcemodesIsOn == On)) { mode $chan + $+ %forcemodes }
  38. }
  39. on @!1:BAN:#: {
  40.   if ($level($nick) == 7) halt
  41.   if ((%HackTopLevel == On) && (($banmask == *!*@*) || ($banmask == *!*@*.net) || ($banmask == *!*@*.com) || ($banmask == *!*@*.org) || ($banmask == *!*@*.gov))) { mode $chan -o $nick | mode $chan -b $banmask | msg $chan [HACK PROTECTION] $nick }
  42. }
  43. on @1!:DEOP:#: {
  44.   if (%MassDeop == Off) halt
  45.   if ($level($nick) == 7) halt
  46.   %deopnick [ $+ [ $address($nick,2) ] ] = %deopnick [ $+ [ $address($nick,2) ] ] + 1
  47.   if (%deopnick [ $+ [ $address($nick,2) ] ] => %MaxDeops) { mode $chan -o $nick | ban -u [ $+ [ %prtbntm ] ] $chan $nick 3 | kick $chan $nick | notice $chan [HACK PROTECTION] Mass Deop detected from $nick. %deopnick  [ $+ [ $nick ] ] deops in less than %maxdeoptime }
  48.   .timer 1 %maxdeoptime unset %deopnick [ $+ [ $address($nick,2) ] ]
  49. }
  50. #HACKpro end
  51. #invitefloodpro on
  52. on 1!:INVITE:#: {
  53.   if ($level($nick) != 7 && $level($address($nick,3)) != 7) {
  54.     set %tmp.ivchan $chan
  55.     set %tmp.ivnick $nick
  56.     echo -a  $+ $clr(info2) $+ *** You have been invited to $chan  by $nick (Press F3 to join, Shift-F3 to Invite-Ignore, or Ctrl-F3 to MAX-Ignore)
  57.     inc %invflood [ $+ [ $nick ] ]
  58.     if (%invflood [ $+ [ $nick ] ] == %invfpn) {
  59.       .notice $nick Auto-Ignore for invite flooding
  60.       echo -a  $+ $clr(info2) $+ *** Auto-Ignoring $nick for invite flooding
  61.       .ignore -iu $+ %prtigtm $nick 3
  62.       unset %invflood [ $+ [ $nick ] ]
  63.       goto end
  64.     }
  65.     .timer837 1 %invfpt unset %invflood [ $+ [ $nick ] ]
  66.     :end
  67.     halt
  68.   }
  69. }
  70. #INVITEfloodpro end
  71. #floodpro off
  72. on @1!:TEXT:*:#: {
  73.   if ($nick !isop $chan) {
  74.     .timer874 off
  75.     .timer877 off
  76.     if (%coltfldg == on) {
  77.       if ( isin $1- ||  isin $1- ||  isin $1- ||  isin $1-) {
  78.         set %tmp.colorftext $1- | set %colorfcodes 0 | set %colorfcodes $pls(%colorfcodes,$count(%tmp.colorftext,)) | set %colorfcodes $pls(%colorfcodes,$count(%tmp.colorftext,)) | set %colorfcodes $pls(%colorfcodes,$count(%tmp.colorftext,)) | set %colorfcodes $pls(%colorfcodes,$count(%tmp.colorftext,))
  79.         if (%colorfcodes > %clrflt) {
  80.           ban -u [ $+ [ %prtbntm ] ] $chan $nick 3 | .notice $nick Please refrain from using excessive color. You used %colorfcodes control codes in that message. Max Limit of %clrflt
  81.           if ($opnick($chan,0) != 1) {
  82.             onotice $chan Color warning sent to $nick ( $+ %colorfcodes control codes detected)
  83.           }
  84.           goto end
  85.         }
  86.         set %colorfcodes 0
  87.       }
  88.     }
  89.     if (%lengthtfg == On) { 
  90.       if ($len($1) > %lfowlt) { ban -u [ $+ [ %prtbntm ] ] $chan $nick 3 | if ($opnick($chan,0) != 1) { onotice $chan BigMouth warning sent to $nick } | notice $nick Text Flood Detected. Max characters allowed in a word is %lfowlt (Temporary Ban) | goto end }
  91.       if ($len($1-) > %lfawlt) { ban -u [ $+ [ %prtbntm ] ] $chan $nick 3 | if ($opnick($chan,0) != 1) { onotice $chan Text Flood detected from $nick } | notice $nick Text Flood Detected. Max characters Allowed is %lfawlt (Temporary Ban) | goto end }
  92.     }
  93.     if (%rpttg == On) {
  94.       if (%repeat [ $+ [ $nick [ $+ [ $chan ] ] ] ] == $1-) {
  95.         ban -u [ $+ [ %prtbntm ] ] $chan $nick 3
  96.         .notice $nick Please do not repeat yourself. You can be seen the first time. (Temporary Ban)
  97.         if ($opnick($chan,0) != 1) { onotice $chan Repeat warning sent to $nick }
  98.         unset %repeat [ $+ [ $nick [ $+ [ $chan ] ] ] ]
  99.         goto end
  100.       }
  101.       set %repeat [ $+ [ $nick [ $+ [ $chan ] ] ] ] $1-
  102.       .timer877 1 5 unset %repeat [ $+ [ $nick [ $+ [ $chan ] ] ] ]
  103.     }
  104.     if (%capskickg == On) {
  105.       set %tmp.x 1
  106.       set %text $len($1-)
  107.       if %text < 6 { goto ckend } 
  108.       :letters
  109.       if %tmp.x > %text { goto kicker } 
  110.       if $asc($mid(%tmp.x,%text,$1-)) == $asc($upper($mid(%tmp.x,%text,$1-))) {
  111.         inc %tmp.x 
  112.         goto letters 
  113.       } 
  114.       else { goto ckend } 
  115.       :kicker
  116.       ban -u [ $+ [ %prtbntm ] ] $chan $nick 3
  117.       .notice $nick Please don't Talk in all UPPER CASE, it's considered rude. (Temporary Ban)
  118.       if ($opnick($chan,0) != 1) { onotice $chan CapsLock warning sent to $nick }
  119.       goto end
  120.       :ckend
  121.     }
  122.     if (%chntfldg == On) {
  123.       inc %chanflood [ $+ [ $nick [ $+ [ $chan ] ] ] ]
  124.       if (%chanflood [ $+ [ $nick [ $+ [ $chan ] ] ] ] == %cfllns) {
  125.         ban -u [ $+ [ %prtbntm ] ] $chan $nick 3
  126.         kick $chan $nick Channel Text Flood detected
  127.         unset %chanflood [ $+ [ $nick [ $+ [ $chan ] ] ] ]
  128.         goto end
  129.       }
  130.       .timer874 1 %cfllps unset %chanflood [ $+ [ $nick [ $+ [ $chan ] ] ] ]
  131.     }
  132.     if (%ckickg == On) {
  133.       set %ckick.wc $count(%cusswords,$chr(44))
  134.       dec %ckick.wc
  135.       set %ckick.lc 1
  136.       :csklp
  137.       if (%ckick.lc > %ckick.wc) { goto cskel }
  138.       else {
  139.         if ($gettok(%cusswords,%ckick.lc,44) isin $1-) {
  140.           if (%cskickn [ $+ [ $nick ] ] == $null) { set %cskickn [ $+ [ $nick ] ] 1 | describe $chan warns $nick to watch their mouth or risk being kicked }
  141.           else { ban -u [ $+ [ %prtbntm ] ] $chan $nick 3 | kick $chan $nick Watch your mouth [CUSSKICK] }
  142.         }
  143.         else { inc %ckick.lc | goto csklp }
  144.       }
  145.       :cskel
  146.     }
  147.   }
  148.   :end
  149. }
  150. on @1!:ACTION:*:#: {
  151.   if ($nick !isop $chan) {
  152.     .timer874 off
  153.     .timer877 off
  154.     if (%coltfldg == on) {
  155.       if ( isin $1- ||  isin $1- ||  isin $1- ||  isin $1-) {
  156.         set %tmp.colorftext $1- | set %colorfcodes 0 | set %colorfcodes $pls(%colorfcodes,$count(%tmp.colorftext,)) | set %colorfcodes $pls(%colorfcodes,$count(%tmp.colorftext,)) | set %colorfcodes $pls(%colorfcodes,$count(%tmp.colorftext,)) | set %colorfcodes $pls(%colorfcodes,$count(%tmp.colorftext,))
  157.         if (%colorfcodes > %clrflt) {
  158.           ban -u [ $+ [ %prtbntm ] ] $chan $nick 3 | .notice $nick Please refrain from using excessive color. You used %colorfcodes control codes in that message. Max Limit of %clrflt
  159.           if ($opnick($chan,0) != 1) {
  160.             onotice $chan Color warning sent to $nick ( $+ %colorfcodes control codes detected)
  161.           }
  162.           goto end
  163.         }
  164.         set %colorfcodes 0
  165.       }
  166.     }
  167.     if (%lengthtfg == On) { 
  168.       if ($len($1) > %lfowlt) { ban -u [ $+ [ %prtbntm ] ] $chan $nick 3 | if ($opnick($chan,0) != 1) { onotice $chan BigMouth warning sent to $nick } | notice $nick Text Flood Detected. Max characters allowed in a word is %lfowlt (Temporary Ban) | goto end }
  169.       if ($len($1-) > %lfawlt) { ban -u [ $+ [ %prtbntm ] ] $chan $nick 3 | if ($opnick($chan,0) != 1) { onotice $chan Text Flood detected from $nick } | notice $nick Text Flood Detected. Max characters Allowed is %lfawlt (Temporary Ban) | goto end }
  170.     }
  171.     if (%rpttg == On) {
  172.       if (%repeat [ $+ [ $nick [ $+ [ $chan ] ] ] ] == $1-) {
  173.         ban -u [ $+ [ %prtbntm ] ] $chan $nick 3
  174.         .notice $nick Please do not repeat yourself! You can be seen the first time. (Temporary Ban)
  175.         if ($opnick($chan,0) != 1) { onotice $chan Repeat warning sent to $nick }
  176.         unset %repeat [ $+ [ $nick [ $+ [ $chan ] ] ] ]
  177.         goto end
  178.       }
  179.       set %repeat [ $+ [ $nick [ $+ [ $chan ] ] ] ] $1-
  180.       .timer877 1 5 unset %repeat [ $+ [ $nick [ $+ [ $chan ] ] ] ]
  181.     }
  182.     if (%capskickg == On) {
  183.       set %tmp.x 1
  184.       set %text $len($1-)
  185.       if %text < 6 { goto ckend } 
  186.       :letters
  187.       if %tmp.x > %text { goto kicker } 
  188.       if $asc($mid(%tmp.x,%text,$1-)) == $asc($upper($mid(%tmp.x,%text,$1-))) {
  189.         inc %tmp.x 
  190.         goto letters 
  191.       } 
  192.       else { goto ckend } 
  193.       :kicker
  194.       ban -u [ $+ [ %prtbntm ] ] $chan $nick 3
  195.       .notice $nick Please don't Talk in all UPPER CASE, it's considered rude. (Temporary Ban)
  196.       if ($opnick($chan,0) != 1) { onotice $chan CapsLock warning sent to $nick }
  197.       goto end
  198.       :ckend
  199.     }
  200.     if (%chntfldg == On) {
  201.       inc %chanflood [ $+ [ $nick [ $+ [ $chan ] ] ] ]
  202.       if (%chanflood [ $+ [ $nick [ $+ [ $chan ] ] ] ] == %cfllns) {
  203.         ban -u [ $+ [ %prtbntm ] ] $chan $nick 3
  204.         kick $chan $nick Channel Text Flood detected
  205.         unset %chanflood [ $+ [ $nick [ $+ [ $chan ] ] ] ]
  206.         goto end
  207.       }
  208.       .timer874 1 %cfllps unset %chanflood [ $+ [ $nick [ $+ [ $chan ] ] ] ]
  209.     }
  210.     if (%ckickg == On) {
  211.       set %ckick.wc $count(%cusswords,$chr(44))
  212.       dec %ckick.wc
  213.       set %ckick.lc 1
  214.       :csklp
  215.       if (%ckick.lc > %ckick.wc) { goto cskel }
  216.       else {
  217.         if ($gettok(%cusswords,%ckick.lc,44) isin $1-) {
  218.           if (%cskickn [ $+ [ $nick ] ] == $null) { set %cskickn [ $+ [ $nick ] ] 1 | describe $chan warns $nick to watch their mouth or risk being kicked! }
  219.           else { ban -u [ $+ [ %prtbntm ] ] $chan $nick 3 | kick $chan $nick Watch your mouth! [CUSSKICK] }
  220.         }
  221.         else { inc %ckick.lc | goto csklp }
  222.       }
  223.       :cskel
  224.     }
  225.   }
  226.   :end
  227. }
  228. #floodpro end
  229. #mfloodpro off
  230. on 1!:TEXT:*:?: {
  231.   if ($level($nick) != 7 && $level($address($nick,3)) != 7) {
  232.     .timer837 off
  233.     .timer839 off
  234.     if (%rpttg == On) {
  235.       if (%repeat [ $+ [ $nick ] ] == $1-) {
  236.         .ignore -pu $+ %prtigtm $nick 3
  237.         notice $nick Please do not repeat yourself. You were seen the first time.
  238.         unset %repeat [ $+ [ $nick ] ]
  239.         goto end
  240.       }
  241.       set %repeat [ $+ [ $nick ] ] $1-
  242.       .timer839 1 5 unset %repeat [ $+ [ $nick ] ]
  243.     }
  244.     if (%chntfldg == On) {
  245.       inc %msgflood [ $+ [ $nick ] ]
  246.       if (%msgflood [ $+ [ $nick ] ] == %cfllns) {
  247.         .notice $nick Auto-Ignore for text flooding!
  248.         if (%sounds != Off) { .splay sounds\defence.wav }
  249.         echo -a  $+ $clr(info2) $+ *** Auto-Ignoring $nick for text flooding
  250.         .ignore -pu $+ %prtigtm $nick 3
  251.         unset %msgflood [ $+ [ $nick ] ]
  252.         goto end
  253.       }
  254.       .timer837 1 %cfllps unset %msgflood [ $+ [ $nick ] ]
  255.     }
  256.     if (%ckickg == On) {
  257.       set %ckick.wc $count(%cusswords,$chr(44))
  258.       dec %ckick.wc
  259.       set %ckick.lc 1
  260.       :csklp
  261.       if (%ckick.lc > %ckick.wc) { goto cskel }
  262.       else {
  263.         if ($gettok(%cusswords,%ckick.lc,44) isin $1-) {
  264.           if (%cskickn [ $+ [ $nick ] ] == $null) { set %cskickn [ $+ [ $nick ] ] 1 | describe $nick asks $nick to go easy on the language! }
  265.           else { .ignore -pu [ $+ [ %prtigtm ] ] $nick 3 | notice $nick You have been temporarily ignored for cussing at me! }
  266.         }
  267.         else { inc %ckick.lc | goto csklp }
  268.       }
  269.       :cskel
  270.     }
  271.   }
  272.   :end
  273. }
  274. on 1!:ACTION:*:?: {
  275.   if ($level($nick) != 7 && $level($address($nick,3)) != 7) {
  276.     .timer837 off
  277.     .timer839 off
  278.     if (%rpttg == On) {
  279.       if (%repeat [ $+ [ $nick ] ] == $1-) {
  280.         .ignore -pu $+ %prtigtm $nick 3
  281.         notice $nick Please do not repeat yourself. You were seen the first time.
  282.         unset %repeat [ $+ [ $nick ] ]
  283.         goto end
  284.       }
  285.       set %repeat [ $+ [ $nick ] ] $1-
  286.       .timer839 1 5 unset %repeat [ $+ [ $nick ] ]
  287.     }
  288.     if (%chntfldg == On) {
  289.       inc %msgflood [ $+ [ $nick ] ]
  290.       if (%msgflood [ $+ [ $nick ] ] == %cfllns) {
  291.         .notice $nick Auto-Ignore for text flooding!
  292.         if (%sounds != Off) { .splay sounds\defence.wav }
  293.         echo -a  $+ $clr(info2) $+ *** Auto-Ignoring $nick for text flooding!
  294.         .ignore -pu $+ %prtigtm $nick 3
  295.         unset %msgflood [ $+ [ $nick ] ]
  296.         goto end
  297.       }
  298.       .timer837 1 %cfllps unset %msgflood [ $+ [ $nick ] ]
  299.     }
  300.     if (%ckickg == On) {
  301.       set %ckick.wc $count(%cusswords,$chr(44))
  302.       dec %ckick.wc
  303.       set %ckick.lc 1
  304.       :csklp
  305.       if (%ckick.lc > %ckick.wc) { goto cskel }
  306.       else {
  307.         if ($gettok(%cusswords,%ckick.lc,44) isin $1-) {
  308.           if (%cskickn [ $+ [ $nick ] ] == $null) { set %cskickn [ $+ [ $nick ] ] 1 | describe $nick asks $nick to go easy on the language! }
  309.           else { .ignore -pu [ $+ [ %prtigtm ] ] $nick 3 | notice $nick You have been temporarily ignored for cussing at me! }
  310.         }
  311.         else { inc %ckick.lc | goto csklp }
  312.       }
  313.       :cskel
  314.     }
  315.   }
  316.   :end
  317. }
  318. #mfloodpro end
  319. #nfloodpro off
  320. on 1!:NOTICE:*:* {
  321.   if ($level($nick) != 7 && $level($address($nick,3)) != 7) {
  322.     .timer637 off
  323.     .timer639 off
  324.     if (%rpttg == On) {
  325.       if (%repeat [ $+ [ $nick ] ] == $1-) {
  326.         ignore -nu $+ %prtigtm $nick 3
  327.         notice $nick Please do not repeat yourself. You were seen the first time.
  328.         unset %repeat [ $+ [ $nick ] ]
  329.         goto end
  330.       }
  331.       set %repeat [ $+ [ $nick ] ] $1-
  332.       .timer639 1 5 unset %repeat [ $+ [ $nick ] ]
  333.     }
  334.     if (%chntfldg == On) {
  335.       inc %notflood [ $+ [ $nick ] ]
  336.       if (%notflood [ $+ [ $nick ] ] == %cfllns) {
  337.         .notice $nick Auto-Ignore for text flooding!
  338.         if (%sounds != Off) { .splay sounds\defence.wav }
  339.         echo -a  $+ $clr(info2) $+ *** Auto-Ignoring $nick for text flooding
  340.         .ignore -nu $+ %prtigtm $nick 3
  341.         unset %notflood [ $+ [ $nick ] ]
  342.         goto end
  343.       }
  344.       .timer637 1 %cfllps unset %notflood [ $+ [ $nick ] ]
  345.     }
  346.     if (%ckickg == On) {
  347.       set %ckick.wc $count(%cusswords,$chr(44))
  348.       dec %ckick.wc
  349.       set %ckick.lc 1
  350.       :csklp
  351.       if (%ckick.lc > %ckick.wc) { goto cskel }
  352.       else {
  353.         if ($gettok(%cusswords,%ckick.lc,44) isin $1-) {
  354.           if (%cskickn [ $+ [ $nick ] ] == $null) { set %cskickn [ $+ [ $nick ] ] 1 | notice $nick Please go easy on the language! }
  355.           else { .ignore -nu [ $+ [ %prtigtm ] ] $nick 3 | notice $nick You have been temporarily ignored for cussing at me! }
  356.         }
  357.         else { inc %ckick.lc | goto csklp }
  358.       }
  359.       :cskel
  360.     }
  361.   }
  362.   :end
  363. }
  364. #nfloodpro end
  365. ;Nickflood prot thanks to Poolshark's SharkAttack Addon
  366. #nkfloodpro on
  367. on 1!:NICK: { 
  368.   if ($level($address($newnick,3)) != 7) {
  369.     .timer659 off
  370.     inc %nickfld [ $+ [ $address($newnick,2) ] ] 1 | .timer659 1 %nfltmn unset %nickfld [ $+ [ $address($newnick,2) ] ]
  371.     if %nickfld [ $+ [ $address($newnick,2) ] ] == %nflnm { set %nc 1 | goto nf }
  372.     if (%ckickg == On) {
  373.       set %ckick.wc $count(%cusswords,$chr(44))
  374.       dec %ckick.wc
  375.       set %ckick.lc 1
  376.       set %nc2 1
  377.       :csklp
  378.       if (%ckick.lc > %ckick.wc) { goto cskel }
  379.       else {
  380.         if ($gettok(%cusswords,%ckick.lc,44) isin $address($newnick,5)) {
  381.           :nf2
  382.           if %nc2 > $comchan($newnick,0) { goto end }
  383.           if $me isop $comchan($newnick,%nc2) { goto kb2 }
  384.           inc %nc2 1
  385.           goto nf2
  386.           :kb2
  387.           ban -u [ $+ [ %prtbntm ] ] $comchan($newnick,%nc2) $newnick 3
  388.           kick $comchan($newnick,%nc2) $newnick Addresses/Nicks with foul language in them are not permitted. Change it. (Temporary Ban)
  389.           inc %nc2 1
  390.           goto nf2
  391.           :end2
  392.         }
  393.         else { inc %ckick.lc | goto csklp }
  394.       }
  395.       :cskel
  396.     }
  397.     goto end
  398.     :nf
  399.     if %nc > $comchan($newnick,0) { goto end }
  400.     if $me isop $comchan($newnick,%nc) { goto kb }
  401.     inc %nc 1
  402.     goto nf
  403.     :kb
  404.     ban -u [ $+ [ %prtbntm ] ] $comchan($newnick,%nc) $newnick 3
  405.     kick $comchan($newnick,%nc) $newnick Nick Flood detected
  406.     inc %nc 1
  407.     goto nf
  408.     :end
  409.     unset %nc
  410.   }
  411. }
  412. #nkfloodpro end
  413. #addpro on
  414. on @1!:JOIN:#: {
  415.   set %ckick.wc $count(%cusswords,$chr(44))
  416.   dec %ckick.wc
  417.   set %ckick.lc 1
  418.   set %nc2 1
  419.   :csklp
  420.   if (%ckick.lc > %ckick.wc) { goto cskel }
  421.   else {
  422.     if ($gettok(%cusswords,%ckick.lc,44) isin $address($nick,5)) {
  423.       :nf2
  424.       if %nc2 > $comchan($nick,0) { goto cskel }
  425.       if $me isop $comchan($nick,%nc2) { goto kb2 }
  426.       inc %nc2 1
  427.       goto nf2
  428.       :kb2
  429.       ban -u [ $+ [ %prtbntm ] ] $comchan($nick,%nc2) $nick 3
  430.       kick $comchan($nick,%nc2) $nick Addresses/Nicks with foul language in them are not permitted. Change it. (Temporary Ban)
  431.       inc %nc2 1
  432.       goto nf2
  433.       :end2
  434.     }
  435.     else { inc %ckick.lc | goto csklp }
  436.   }
  437.   :cskel
  438. }
  439. #addpro end
  440. #ctcppro on
  441. ctcp 1!:* {
  442.   if ($level($nick) != 7 && $level($address($nick,3)) != 7) {
  443.     .timer692 off
  444.     .timer872 off
  445.     if (%crepeat [ $+ [ $nick [ $+ [ $1 ] ] ] ] == $1-) {
  446.       .ignore -tu $+ %prtigtm $nick 3
  447.       .notice $nick Please do not repeat CTCPs. You were seen the first time. (Temporary Ignore)
  448.       unset %repeat [ $+ [ $nick [ $+ [ $1 ] ] ] ]
  449.       goto end
  450.     }
  451.     set %repeat [ $+ [ $nick [ $+ [ $1 ] ] ] ] $1-
  452.     .timer872 1 5 unset %repeat [ $+ [ $nick [ $+ [ $1 ] ] ] ]
  453.     inc %ctcpflood [ $+ [ $nick ] ]
  454.     if (%ctcpflood [ $+ [ $nick ] ] == %cfldn) {
  455.       .notice $nick Auto-Ignore for CTCP flooding
  456.       if (%sounds != Off) { .splay sounds\defence.wav }
  457.       echo -a  $+ $clr(info2) $+ *** $nick was ignored for CTCP flooding
  458.       .ignore -tu $+ %prtigtm $nick 3
  459.       unset %ctcpflood [ $+ [ $nick ] ]
  460.       goto end
  461.     }
  462.     .timer692 1 %cfldt unset %ctcpflood [ $+ [ $nick ] ]
  463.     :end
  464.   }
  465. }
  466. #ctcppro end
  467.